package controladores;


import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Iterator;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

import builder.CategoriaModeloBuilder;
import builder.ModeloDirector;
import modelos.ModeloCategoria;
import vistas.VistaCategoria;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author usuario
 */
public class ControladorCategoria implements ActionListener{

    private VistaCategoria vista;
    private ModeloCategoria modelo;
    private CategoriaModeloBuilder builder;
    private ModeloDirector director;

    public ControladorCategoria(VistaCategoria vista) {
        this.vista = vista;
        vista.addListener(this);
        builder= new CategoriaModeloBuilder();
        director = new ModeloDirector();
        director.setModeloBuilder(builder);
    }

    public void actionPerformed(ActionEvent ae) {
        if(ae.getActionCommand().equals("Registrar")){
                if(!vista.hayVacios() && vista.codigoValido()){
                	builder.setDescripcion(vista.getTxtDescripcion().getText());
                	builder.setCodigo(Integer.parseInt(vista.getTxtCodigo().getText()));
                	builder.setEstatus("A");
                	director.construirModelo();
                	modelo=(ModeloCategoria)director.getModelo();
                	if(modelo.registrar()){
                		vista.mostrarMensaje("Categoria registrada exitosamente");
                		vista.limpiar();
                	}
                	else
                		vista.mostrarMensaje("El codigo o la descripcion registrados");
                }
        }
        else if(ae.getActionCommand().equals("Salir")){
            vista.setVisible(false);
            vista.limpiar();
        }
        else{
            vista.limpiar();
        }            
    }

}
